package cc.rengu.redp.bizimpl.igas.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * 支付订单表
 *
 * @author System
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("T_P_PAY_ORDER_INFO")
public class PayOrderInfo implements Serializable {

    /**** 预约转账交易码 **/
    private static final String TXN_NUM = "P01CP001";
    /***  联合主键长度 **/
    private static final Integer UNIQUE_INDEX_LENGTH = 4;

    private static final long serialVersionUID = 1L;

    /**
     * 联合主键
     */
    @TableField(exist = false)
    private String id;

    /***开始时间***/
    @TableField(exist = false)
    private String createTimeFrom;
    /**** 结束时间 ***/
    @TableField(exist = false)
    private String createTimeTo;

    /**
     * 机构标识
     */
    @TableField("INST_ID")
    private String instId;

    /**
     * 交易日期
     */
    @TableField("TXN_DATE")
    private String txnDate;

    /**
     * 交易时间
     */
    @TableField("TXN_TIME")
    private String txnTime;

    /**
     * 内部交易码
     */
    @TableField("TXN_NUM")
    private String txnNum;

    /**
     * 业务细分
     */
    @TableField("BIZ_TYPE")
    private String bizType;

    /**
     * 交易批次号
     */
    @TableField("TRANS_BATCH_NO")
    private String transBatchNo;

    /**
     * 系统流水号
     */
    @TableField("SYS_SEQ_NUM")
    private String sysSeqNum;

    /**
     * 原交易日期
     */
    @TableField("ORIG_TXN_DATE")
    private String origTxnDate;

    /**
     * 原交易流水号
     */
    @TableField("ORIG_SYS_SEQ_NUM")
    private String origSysSeqNum;

    /**
     * 商户订单号
     */
    @TableField("MCHNT_ORDER_ID")
    private String mchntOrderId;

    /**
     * 订单有效期
     */
    @TableField("ORDER_EXPIRY_TIME")
    private String orderExpiryTime;

    /**
     * 商户号
     */
    @TableField("MCHNT_NO")
    private String mchntNo;

    /**
     * 用户编号
     */
    @TableField("USER_ID")
    private String userId;

    /**
     * 订单币种
     */
    @TableField("ORDER_CCY")
    private String orderCcy;

    /**
     * 订单金额
     */
    @TableField("ORDER_AMT")
    private String orderAmt;

    /**
     * 交易通道标识
     */
    @TableField("MSG_DST_ID")
    private String msgDstId;

    /**
     * 通道调用序号
     */
    @TableField("DST_CALL_INDEX")
    private String dstCallIndex;

    /**
     * 通道类型
     */
    @TableField("DST_CHANNEL_TYPE")
    private String dstChannelType;

    /**
     * 通道业务类型
     */
    @TableField("CHANNEL_BIZ_TYPE")
    private String channelBizType;

    /**
     * 通道交易码
     */
    @TableField("DST_TXN_NUM")
    private String dstTxnNum;

    /**
     * 实际支付金额
     */
    @TableField("REAL_PAY_AMT")
    private String realPayAmt;

    /**
     * 通道优惠金额
     */
    @TableField("CHANNEL_DISCOUNT_AMT")
    private String channelDiscountAmt;

    /**
     * 通道手续费
     */
    @TableField("CHANNEL_FEE")
    private String channelFee;

    /**
     * 客户手续费
     */
    @TableField("CUSTOMER_FEE")
    private String customerFee;

    /**
     * 通道清算日期
     */
    @TableField("SETTLE_DATE")
    private String settleDate;

    /**
     * 交易授权码
     */
    @TableField("TXN_AUTH_CODE")
    private String txnAuthCode;

    /**
     * 支付通道流水号
     */
    @TableField("CHANNEL_SEQ_NUM")
    private String channelSeqNum;

    /**
     * 支付通道订单号
     */
    @TableField("CHANNEL_ORDER_ID")
    private String channelOrderId;

    /**
     * 支付通道对账唯一KEY
     */
    @TableField("CHANNEL_RECON_KEY")
    private String channelReconKey;

    /**
     * 发卡机构号
     */
    @TableField("ISS_INST_CODE")
    private String issInstCode;

    /**
     * 付款方账户类型
     */
    @TableField("PAYER_ACCT_TYPE")
    private String payerAcctType;

    /**
     * 付款方账户信息
     */
    @TableField("PAYER_ACCT_INFO")
    private String payerAcctInfo;

    /**
     * 付款方预留信息
     */
    @TableField("PAYER_REMARK")
    private String payerRemark;

    /**
     * 收款方账户类型
     */
    @TableField("PAYEE_ACCT_TYPE")
    private String payeeAcctType;

    /**
     * 收款方账户信息
     */
    @TableField("PAYEE_ACCT_INFO")
    private String payeeAcctInfo;

    /**
     * 收款方预留信息
     */
    @TableField("PAYEE_REMARK")
    private String payeeRemark;

    /**
     * 支付方式
     */
    @TableField("PAY_TYPE")
    private String payType;

    /**
     * 交易状态
     */
    @TableField("TRANS_STATUS")
    private String transStatus;

    /**
     * 业务状态
     */
    @TableField("BIZ_STATUS")
    private String bizStatus;

    /**
     * 响应码
     */
    @TableField("RESP_CODE")
    private String respCode;

    /**
     * 响应码描述
     */
    @TableField("RESP_DESC")
    private String respDesc;

    /**
     * 创建时间
     */
    @TableField("CREATE_TIME")
    private String createTime;

    /**
     * 修改时间
     */
    @TableField("UPDATE_TIME")
    private String updateTime;

    /**
     * 备用字段1
     */
    @TableField("REMARK1")
    private String remark1;

    /**
     * 备用字段2
     */
    @TableField("REMARK2")
    private String remark2;

    /**
     * 备用字段3
     */
    @TableField("REMARK3")
    private String remark3;


}
